<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/SingleSignOn.Entities" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/SingleSignOn.Entities" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="LoginRequest">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:BaseRequest">
        <xs:sequence />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="LoginRequest" nillable="true" type="tns:LoginRequest" />
  <xs:complexType name="BaseRequest">
    <xs:sequence>
      <xs:element minOccurs="0" name="User" nillable="true" type="tns:User" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="BaseRequest" nillable="true" type="tns:BaseRequest" />
  <xs:complexType name="User">
    <xs:sequence>
      <xs:element minOccurs="0" name="FirstName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LastName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="LoginId" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Password" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="User" nillable="true" type="tns:User" />
  <xs:complexType name="LoginResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:BaseResponse">
        <xs:sequence>
          <xs:element minOccurs="0" name="User" nillable="true" type="tns:User" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="LoginResponse" nillable="true" type="tns:LoginResponse" />
  <xs:complexType name="BaseResponse">
    <xs:sequence>
      <xs:element minOccurs="0" name="Fault" nillable="true" type="tns:SingleSignOnFault" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="BaseResponse" nillable="true" type="tns:BaseResponse" />
  <xs:complexType name="SingleSignOnFault">
    <xs:sequence>
      <xs:element minOccurs="0" name="Code" type="xs:int" />
      <xs:element minOccurs="0" name="HelpLink" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Message" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Source" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="StackTrace" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="SingleSignOnFault" nillable="true" type="tns:SingleSignOnFault" />
  <xs:complexType name="TokenRequest">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:BaseRequest">
        <xs:sequence>
          <xs:element minOccurs="0" name="Token" nillable="true" type="tns:Token" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="TokenRequest" nillable="true" type="tns:TokenRequest" />
  <xs:complexType name="Token">
    <xs:sequence>
      <xs:element minOccurs="0" name="Id" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="Token" nillable="true" type="tns:Token" />
  <xs:complexType name="TokenResponse">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:BaseResponse">
        <xs:sequence>
          <xs:element minOccurs="0" name="Token" nillable="true" type="tns:Token" />
          <xs:element minOccurs="0" name="User" nillable="true" type="tns:User" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="TokenResponse" nillable="true" type="tns:TokenResponse" />
  <xs:complexType name="ArrayOfOnlineUser">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="OnlineUser" nillable="true" type="tns:OnlineUser" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfOnlineUser" nillable="true" type="tns:ArrayOfOnlineUser" />
  <xs:complexType name="OnlineUser">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:User">
        <xs:sequence>
          <xs:element minOccurs="0" name="LoginTime" type="xs:dateTime" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="OnlineUser" nillable="true" type="tns:OnlineUser" />
  <xs:complexType name="ArrayOfSecurityToken">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="SecurityToken" nillable="true" type="tns:SecurityToken" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSecurityToken" nillable="true" type="tns:ArrayOfSecurityToken" />
  <xs:complexType name="SecurityToken">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Token">
        <xs:sequence>
          <xs:element minOccurs="0" name="CreateTime" type="xs:dateTime" />
          <xs:element minOccurs="0" name="User" nillable="true" type="tns:User" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="SecurityToken" nillable="true" type="tns:SecurityToken" />
</xs:schema>